1. Technical Field
This application relates to computer storage devices, and more particularly to the field of transferring data between storage devices.
2. Description of Related Art
Host processor systems may store and retrieve data using a storage device containing a plurality of host interface units (host adapters), disk drives, and disk interface units (disk adapters). Such storage devices are provided, for example, by EMC Corporation of Hopkinton, Mass. and disclosed in U.S. Pat. No. 5,206,939 to Yanai et al., U.S. Pat. No. 5,778,394 to Galtzur et al., U.S. Pat. No. 5,845,147 to Vishlitzky et al., and U.S. Pat. No. 5,857,208 to Ofek. The host systems access the storage device through a plurality of channels provided therewith. Host systems provide data and access control information through the channels to the storage device and the storage device provides data to the host systems also through the channels. The host systems do not address the disk drives of the storage device directly, but rather, access what appears to the host systems as a plurality of logical disk units. The logical disk units may or may not correspond to the actual disk drives. Allowing multiple host systems to access the single storage device unit allows the host systems to share data stored therein.
A significant number of mainframe applications that access tape drive data are still in use. In many cases, tape drives have been replaced by hardware and/or software that provides tape drive simulation/emulation. For example, the DLm960 device provided by EMC Corporation of Hopkinton, Mass. provides tape drive functionality so that applications in a host system coupled thereto (e.g., an IBM System z host device). Thus, applications running on a host system coupled to a DLm960 (or similar) would send tape commands and data thereto and receive tape data and status as if the applications were communicating with an actual tape drive. The DLm960 may include non-volatile storage (e.g., disk array) to store tape data and tape emulation information.
One issue associated with using tape emulation is that data transfers between a storage device coupled to a host and a tape emulation device coupled to the host is through the host. That is, to transfer data between the tape emulation device and the storage device, the host first reads the data from one of the devices and writes the data to the other one of the devices. Although this may be acceptable in the case of actual tape devices, it may be inefficient when tape emulation is used since tape emulation uses one or more storage devices like the storage device couple to the host that is the sender or receiver of the tape data.
Accordingly, it is desirable to provide a tape emulation system that efficiently transfers data between a tape emulation device and a storage device coupled to a host.